package com.ruoyi.warning.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.warning.domain.entity.Device;
import com.ruoyi.warning.domain.entity.DevicesPing;
import com.ruoyi.warning.domain.query.DeviceQuery;

import java.io.IOException;
import java.util.List;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author chenhc
 * @since 2025-03-26
 */
public interface IDevicesService extends IService<Device> {

    Object getAllDevices(DeviceQuery deviceQuery);

    Object getDeviceDetail(String deviceId) throws IOException;

    Object updateDetail(Device device);

    Object getAllDevicesPage(DeviceQuery deviceQuery);

    Object resetXY(List<String> list);

    Object getDeviceWarningCount(String deviceId);

    Object getDeviceNet(String deviceId) throws IOException;

    void deleteDevice(String id);

    Object wirelessPage(DeviceQuery deviceQuery);

    Object getDevicePING(String deviceId) throws IOException;

    Object getDeviceSNMP(String deviceId);

    Object addDevice(Integer deviceId);

    void refresh();

    List<DevicesPing> getPing(DeviceQuery deviceQuery);

    void savePing();

    Object getDeviceMempoolChart(DeviceQuery deviceQuery);

    Object getDeviceProcessorChart(DeviceQuery deviceQuery);
}
